The present invention relates in general to a system using programmable logic devices (PLDs), and in particular to a highly flexible interface system to perform full diagnostic functions for a PLD or a system using multiple PLDs.
Programmable logic has made vast inroads into the field of electronic systems design. Combining multiple PLDs into a single programmable system has made possible emulation systems having significant logic density. Ever increasing amounts of "glue" logic as well as substantial functional blocks are being drawn inside of the new high capacity PLDs. As the level of integration of this functionality increases, the performance and cost improve dramatically. With many logic signals now entirely contained inside of programmable logic devices, the speed, power, efficiency and reliability of the system also improve. The most significant issues in system reliability typically have to do with mechanical connections between devices and the printed circuit board and the connector systems between boards. Thus, as the number of logic signals which are mechanically routed on printed circuit boards and through connectors is reduced, the overall system reliability improves.
The downside of increasing integration is that less and less signals are directly accessible (i.e., observable and controllable) by the engineer charged with system debug. Many of the signals which are of considerable interest when debugging the system are often typically buried inside the programmable logic device. As a result, system debugging and troubleshooting capability is thus severely limited.
It is therefore desirable to make accessible internal nodes of programmable logic devices to improve the diagnostics capability of programmable logic systems.